using CosyTrade.Core;
using CosyTrade.Network;
using CosyTrade.Security;
using DevExpress.XtraEditors;

namespace CosyTrade.UI
{
    public class AddinFormBase : XtraForm, IAddinForm
    {
        protected string functionKey;
        protected SystemStat currentSystemStat;
        protected AddinManager currentAddinManager;
        protected IRemotingPortalFactory currentPortalFactory;
        protected PowerSet currentFunctionPowerSet;
        protected readonly TollbarCommandCollection toolbarItems = new TollbarCommandCollection();
        protected IMainForm mainForm;
        protected IStatbarController currentStatbarController;

        public SystemStat CurrentSystemStat
        {
            get { return currentSystemStat; }
        }

        public AddinManager CurrentAddinManager
        {
            get { return currentAddinManager; }
        }

        public IRemotingPortalFactory CurrentPortalFactory
        {
            get { return currentPortalFactory; }
        }

        public string FunctionKey
        {
            get { return functionKey; }
        }

        public PowerSet CurrentFunctionPowerSet
        {
            get { return currentFunctionPowerSet; }
        }

        public TollbarCommandCollection ToolbarItems
        {
            get { return toolbarItems; }
        }

        public IMainForm MainForm
        {
            get { return mainForm; }
        }

        public IStatbarController CurrentStatbarController
        {
            get { return currentStatbarController; }
        }
    }
}